package com.ec.system.modules.sys.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.ec.core.common.core.base.BasePageVO;
import com.ec.system.modules.sys.dto.QueryDeptDTO;
import com.ec.system.modules.sys.dto.SysDeptDTO;
import com.ec.system.modules.sys.entity.SysDept;
import com.ec.system.modules.sys.vo.DeptTreeVO;
import com.ec.system.modules.sys.vo.SysDeptVO;

import java.util.List;

/**
 * @description:
 * @author: Eric Lee
 * @time: 2021/7/20 17:52
 */
public interface ISysDeptService extends IService<SysDept> {
    BasePageVO<SysDeptVO> listDept(QueryDeptDTO listDeptDTO);

    boolean addDept(SysDeptDTO deptDTO);

    boolean updateDept(SysDeptDTO deptDTO);

    boolean deleteDept(SysDeptDTO deptDTO);

    List<DeptTreeVO> allDeptTree(QueryDeptDTO queryDeptDTO);

    List<DeptTreeVO> tenantDeptTree();

    List<SysDept> findTenantDeptNodes(Long deptId, Long tenantId);
}
